package com.walming.generator.common.core.page;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.util.List;

/**
 * 表格分页数据对象
 *
 * @author Frank
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@ApiModel(value = "分页数据", description = "分页数据")
public class TableDataInfo<T> {

    /** 数据库表总行数 */
    @ApiModelProperty("总记录数")
    private long total;
    /** 列表数据 */
    @ApiModelProperty("列表数据")
    private List<T> rows;
    /** 消息状态码 */
    @ApiModelProperty("消息状态码")
    private int code;

    /** 当前记录起始索引 */
    @ApiModelProperty("当前记录起始索引")
    private int pageNum;
    /** 每页显示记录数 */
    @ApiModelProperty("每页显示记录数")
    private int pageSize;
    /** 分页后总页数 */
    @ApiModelProperty("分页后总页数")
    private int totalPage;

    public TableDataInfo(List<T> list, long total) {
        this.rows = list;
        this.total = total;
    }

}
